package com.zhoug.zmui.menu.tree;

import java.util.List;

import androidx.annotation.Keep;

/**
 * 树形菜单节点,菜单必须继承它
 *
 * @Author 35574
 * @Date 2020/11/20
 * @Description
 */
@Keep
public interface ITreeNode<D extends ITreeNode<D>> {
    /**
     * 菜单id
     *
     * @return
     */
    String getId();

    /**
     * 菜单名字
     *
     * @return
     */
    String getName();

     void  setChild(List<D> child);

    /**
     * 子菜单
     *
     * @return
     */
    List<D> getChild();

    /**
     * 是否有子菜单
     *
     * @return
     */
    boolean isHasChild();

    /**
     * 是否有子菜单
     *
     * @param hasChild
     */
    void setHasChild(boolean hasChild);

    /**
     * 是否展开
     *
     * @return
     */
    boolean isExpanded();

    /**
     * 设置展开
     *
     * @param expanded
     */
    void setExpanded(boolean expanded);


}
